package org.szy.plugin.sys.service;

import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.query.QueryWrapper;
import org.szy.core.common.page.QueryPage;
import org.szy.core.common.param.CommonStatusParam;
import org.szy.core.common.service.BaseService;
import org.szy.plugin.sys.entity.SysPosition;
import org.szy.plugin.sys.param.SysPositionQueryParam;

/**
 * 系统职位Service接口
 *
 * @author wangbuhao
 * @since 2023-06-19 20:13:46
 **/
public interface SysPositionService extends BaseService<SysPosition> {

    /**
     * 获取系统职位查询Wrapper
     *
     * @author wangbuhao
     * @since 2023-06-19 20:13:46
     */
    QueryWrapper qwByQuery(SysPositionQueryParam param);

    /**
     * 获取系统职位分页
     *
     * @author wangbuhao
     * @since 2023-06-19 20:13:46
     */
    Page<SysPosition> page(QueryPage<SysPosition> page, SysPositionQueryParam param);

    /**
     * 添加系统职位
     * @param entity 职位对象
     * @return  操作结果
     */
    boolean add(SysPosition entity);

    /**
     * 修改状态
     * @param param 状态参数
     * @return  是否成功
     */
    boolean modifyStatus(CommonStatusParam param);
}
